package com.ssy.lingxi.settle.accounts.model.vo.request;

import com.ssy.lingxi.common.model.vo.PageVO;
import com.ssy.lingxi.settle.accounts.handler.annotation.DateStringFormatAnnotation;
import com.ssy.lingxi.settle.accounts.handler.annotation.ReconciliationStatusAnnotation;

import java.io.Serializable;

/**
 * 对账单列表查询条件VO
 * @author Saske
 * @date 2021/12/3
 * @version 2.0.0
 */
public class ReconciliationListVO extends PageVO implements Serializable {

    private static final long serialVersionUID = -8243960822439570038L;


    /**
     * 对账单号
     */
    private String reconciliationNo;

    /**
     * 对账单摘要
     */
    private String reconciliationAbstract;

    /**
     * 付款方
     */
    private String payer;

    /**
     * 收款方
     */
    private String payee;

    /**
     * 对账单状态，定义在ReconciliationStatusEnum中,1-待提交 2-确认不通过 3-待确认 4-待请款 5-已请款
     */
    @ReconciliationStatusAnnotation
    private Integer status;

    /**
     * 单据时间开始，格式为yyyy-MM-dd
     */
    @DateStringFormatAnnotation
    private String createTimeStart;

    /**
     * 单据时间结束，格式为yyyy-MM-dd
     */
    @DateStringFormatAnnotation
    private String createTimeEnd;

    public String getReconciliationNo() {
        return reconciliationNo;
    }

    public void setReconciliationNo(String reconciliationNo) {
        this.reconciliationNo = reconciliationNo;
    }

    public String getReconciliationAbstract() {
        return reconciliationAbstract;
    }

    public void setReconciliationAbstract(String reconciliationAbstract) {
        this.reconciliationAbstract = reconciliationAbstract;
    }

    public String getPayer() {
        return payer;
    }

    public void setPayer(String payer) {
        this.payer = payer;
    }

    public String getPayee() {
        return payee;
    }

    public void setPayee(String payee) {
        this.payee = payee;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getCreateTimeStart() {
        return createTimeStart;
    }

    public void setCreateTimeStart(String createTimeStart) {
        this.createTimeStart = createTimeStart;
    }

    public String getCreateTimeEnd() {
        return createTimeEnd;
    }

    public void setCreateTimeEnd(String createTimeEnd) {
        this.createTimeEnd = createTimeEnd;
    }
}
